package qnb.service;

import org.apache.ibatis.annotations.Param;
import qnb.entity.Grade;

import java.util.List;

/**
 * 	班级信息业务层接口
 * @author 张皓然
 *
 */
public interface GradeService {

	/**
	 * 	查询所有的班级信息
	 * @return	将结果保存到List集合中
	 */
	public List<Grade> selectAllGrade(@Param("where") String where, @Param("order") String order, @Param("start") int start, @Param("rows") int rows);

	/**
	 *  只查询班级名称作为下拉框绑定数据
	 * @return
	 */
	public List<Grade> selectAllGradeName();

	/**
	 *
	 * 查询总班级个数
	 * 		查询条件存放到	Condition 类中
	 * @return 返回一个整形数值
	 */
	public Integer selectCountByGrade(@Param("where") String where);

	/**
	 * 	添加一个班级信息
	 * @return	根据返回值判断是否添加成功
	 */
	public Integer insertGrade(Grade grade);
	/**
	 * 	删除一个班级信息
	 * @return	根据返回值判断是否删除成功
	 */
	public Integer deleteGrade(Integer grade_id);
	/**
	 * 	修改一个班级的信息
	 * @return  根据返回值判断是否更新成功
	 */
	public Integer updateGrade(Grade grade);

	/**
	 *  根据id查询指定信息
	 * @param grade_id
	 * @return
	 */
	Grade selectGradeById(Integer grade_id);
	/**
	 * 查询所有数据
	 * @return
	 */
	public List<Grade> selectAllForStu();
}
